<?php
// No direct access
defined( '_JEXEC' ) or die( 'Restricted access' );

jimport( 'joomla.application.component.view' );

jimport('joomla.html.pagination');

/**
 * Asistencias View
 */
// asistencias diarias vista de una lista de las asistencias
class ReghsViewAsistencias extends JView {
    
    function display($tpl = null) {
//        //controlo que el usuario esta logeado sino redirecciono
//        $usuario =& JFactory::getUser();
//        $miID = $usuario->get('id');
//
//        if ($miID == 0) {
//            $link = JRoute::_( 'index.php?option=com_user&view=login');
//            $controller->setRedirect($link);
//            $controller->redirect();
//        }
        JHTML::_('behavior.mootools');
        //agregado para la paginacion
        global $mainframe, $option;
        $params = &$mainframe->getParams();
        //define layout
        $layout     = JRequest::getCmd('layout');
        //$limitstart	= JRequest::getVar('limitstart', 0, '', 'int');

        $ids = JRequest::getVar('ids',null,'post');

        $model =& $this->getModel();
        //verifico si vienen ids de asistencias seleccionadas para luego setear la fecha de emision
        
        if($ids) {
            $model->setFechaEmision($ids);
        }
        $params->def('show_pagination_limit',	1);

        //define parametros para la paginacion
        $limit = $mainframe->getUserStateFromRequest('global.list.limit', 'limit', 15, 'int');
        $limitstart = JRequest::getVar('limitstart', 0, '', 'int');

        // ajusta el limite
        $limitstart = ($limit != 0 ? (floor($limitstart / $limit) * $limit) : 0);
        //$total		= & $this->get( 'Total' );

        //recupero parametros para el filtrado del listado
        $resolucion = JRequest::getInt('resoluciones_cargos_id',null);
        $tema = JRequest::getString('tema_f',null);
        $fecha_ini = JRequest::getString('fecha_ini',null);
        $fecha_fin = JRequest::getString('fecha_fin',null);
        $est_asistencia = JRequest::getInt('estado_asistencia',null);

        //obtengo el total para la paginacion
        $total = $model->getTotal($resolucion,
                                   $tema,
                                   $fecha_ini,
                                   $fecha_fin,
                                   $est_asistencia);
        
        $pagination = new JPagination($total, $limitstart, $limit);

        //recupero los datos con los filtros
        $datos = & $model->getData($pagination->limitstart,
                                   $pagination->limit,
                                   $resolucion,
                                   $tema,
                                   $fecha_ini,
                                   $fecha_fin,
                                   $est_asistencia
                                   );

        //recupero los datos para mostrar junto con la paginacion
        //$datos = & $model->getData($pagination->limitstart,$pagination->limit);

        //$this->assign('datos',$datos);
        $this->assignRef('items',$datos);
        $this->assignRef('params',		$params);
        $this->assignRef('pagination',	$pagination);

        //asigno los filtros para mantenerlos en el form
        $this->assignRef('resolucion',	$resolucion);
        $this->assignRef('tema',	$tema);
        $this->assignRef('fecha_ini',	$fecha_ini);
        $this->assignRef('fecha_fin',	$fecha_fin);
        $this->assignRef('est_asistencia', $est_asistencia);

        parent::display($tpl);
    }
}
?>
